
public class HelloWorld {
    public static void main(String[] args) {
        String str = "加油";
        int a = 20;
        int b = 21;
        String result =a + b +str;
        System.out.println(result);
    }
    public static void main17(String[] args) {
        String str = "加油";
        int a = 20;
        int b = 21;
        String result = str + a + b;
        System.out.println(result);
    }

    public static void main16(String[] args) {
        String a = "hello";
        String b = "world";
        String c = a + b;
        System.out.println(c);
    }
    public static void main15(String[] args) {
        char ch = '六';
        System.out.println(ch);
    }
    public static void main14(String[] args) {
        double a = 1.1;
        System.out.println(a*a);
    }
    public static void main13(String[] args) {
        int a = 1;
        int b = 2;
        System.out.println(a/b);
        double c = 1.0;
        double d = 2.0;
        System.out.println(c/d);
    }

    //注释  单行//   多行   ctrl + / 单行   多行 ctrl + shift + /
    //三目运算符  表达式1？ 表达式2：表达式3；  表达式1一定为bool表达式

    // >>右移 右移相当于除法 （补符号位）  <<左移 左移相当于乘法  >>> 无符号右移 统统补0

    public static void main12(String[] args) {
       /* byte a = 130;
        float b = 3.5; //这两行代码会发生编译错误*/
        //int  a = 3; byte b = a;
        /*        short a =128;

        byte b =(byte) a;*/
/*        double x=2.0;
        int y=4;
        x/=++y;
        System.out.println(x);*/
//        System.out.println(b);
    }

    //逻辑或  表达式1||表达式2  只要一个表达式为真 ，就为真   短路执行：若表达式1为真，则表达式2不执行   这两个表达式也是boolean类型
    public static void main11(String[] args) {

    }

    //逻辑与 表达式1&&表达式2  只有两个为真才为真  如果表达式1为假表达式2不执行
    //3这两个表示一定只能是boolean类型
    public static void main10(String[] args) {
        int a = 10;
        int b = 20;
        System.out.println(a > b);
        System.out.println(a == b);
        System.out.println(a < b);
    }
    public static void main9(String[] args) {
        int a = 10;
        int b = ++a;
        int c = a++; //前置和后置++是决定先使用还是先++
        a = a++;//10  需要看反汇编
        System.out.print(a);//11
        //System.out.print("\n");
        System.out.println(b);//11
        System.out.println(c);//10
    }
    public static void main8(String[] args) {
        int a =10;
        a += 10;
        System.out.println(a);

        //复合运算符 会帮你进行类型的转换
        short sh = 10;
        //sh = sh+19;//会报错 数据类型不一样
        sh += 19;
        System.out.println(sh);
    }
    public static void main7(String[] args) {
       // System.out.println(1/0);//除数不能为零  出错的原因
    //%
        System.out.println(10 % 3); //1
        System.out.println(10 % -3); //1
        System.out.println(-10 % -3); //-1
        System.out.println(-10 % 3);// -1
        System.out.println(11.5 % 2.0); // 1.5;可以对小数求余数
    }
    //整数与字符串的转换
    public static void main6(String[] args) {
        String str = "100";
        int a = Integer.valueOf(str);
        int b = a + 1;
        System.out.println(b);
        int ret = Integer.parseInt(str);
        System.out.println(ret);
    }
    public static void main5(String[] args) {
        int  a = 10;
        String str1 = a + "";
        System.out.println(str1);

        String str3 = String.valueOf(a);
        System.out.println(str3);
    }
    public static void main4(String[] args) {
        String str ="xiebang is cool!";
        System.out.println(str);//引用变量 --- 存的是地址
        String str2 = "hello 张三";
        int a = 10;
        System.out.println("a = " + a);

        int b = 20;
        System.out.println("hello " + a + b);//字符串
        System.out.println(a + b + "hello");
    }
    public static void main3(String[] args) {
        boolean flg1 = true;
        boolean flg2 = false;
        //取值范围 true false  并没有0是假非零为真
        //JVM 的标准并未说明是几个字节  没有明确的大小， 但是有些书是1bit  或1byte
        // 如果选择题。
    }
    public static void main2(String[] args) {
        short a = 10;
        short b = 20;
        System.out.println(Short.MIN_VALUE);
        System.out.println(Short.MAX_VALUE);
    }
    public static void main1(String[] args) {
        int a = 10;
        //System.out.println(a);
        //a 占4个字节 和多少位平台没有关系  所以可移植性强
        //a  的取值范围 1个符号位  31个数值位 -2^31   ----- 2^31
        // 在java中 没有无符号整数 “都是”有符号的
        // 不能以数字开头
        // 建议不以字符开头
        System.out.println(Integer.MAX_VALUE);
        System.out.println(Integer.MIN_VALUE);
        //System.out.println("helloworld");
        System.out.println("========================");
        System.out.println(Integer.MAX_VALUE+1);
        System.out.println(Integer.MIN_VALUE-1);
        System.out.println("========================");
        System.out.println(Long.MAX_VALUE);
        System.out.println(Long.MIN_VALUE);
        System.out.println("========================");
        double d = 10.25;
        System.out.println(d);


        System.out.println(Double.MAX_VALUE);
        System.out.println(Double.MIN_VALUE);


    }
}
